package com.topnav.mc.admin.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.js.lib.mybitsplus.IJsService;
import com.js.lib.mybitsplus.page.JsPage;
import com.topnav.mc.admin.controller.FullScreenMoniter.ChartDataBean;
import com.topnav.mc.admin.entity.DeviceAlarm;
import com.topnav.mc.admin.entity.bean.DeviceAlarmBean;
import com.topnav.mc.admin.entity.enums.EnumModal;
import com.topnav.mc.admin.entity.param.DeviceAlarmParam;
import com.topnav.mc.base.mc.IMcService;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @Author: kenny
 * @Date: 2023/11/7 11:46
 */
public interface IDeviceAlarmService extends IMcService<DeviceAlarm, DeviceAlarmBean, DeviceAlarmParam> {

    /**
     * 按报警类型查询统计
     * @param page
     * @param queryWrapper
     * @return
     */
    Page<DeviceAlarmBean> countGroupByCatePage(Page<DeviceAlarmParam> page, Wrapper queryWrapper,Integer alacmCate);

    /**
     * 按类型统计报警
     * @param queryWrapper
     * @return
     */
    List<ChartDataBean> countGroupByCateList(@Param("ew") Wrapper queryWrapper);
    /**
     * 报警类型
     * @return
     */
    List<EnumModal> getDeviceAlarmCate();
}
